package com.lagou.service;

import com.lagou.domain.*;

import java.util.List;

public interface RoleService {

    /**
     * 根据条件查询所有角色
     */
    public List<Role> findAllRole(Role role);

    /**
     * 根据角色id查询该角色关联的菜单信息id[1,2,3,4]
     */
    public List<Integer> findMenuByRoleId(Integer roleId);

    /**
     * 添加角色
     */
    public void saveRole(Role role);

    /**
     * 根据id回显角色信息
     */
    public Role findRoleById(Integer id);

    /**
     * 更新角色
     */
    public void updateRole(Role role);

    /**
     * 根据roleID清空中间表关系
     */
    public void deleteRoleContextMenu(Integer rid);

    /**
     * 为角色分配菜单信息
     * 实指就是添加
     */
    public void roleContextMenu(RoleMenuVo roleMenuVo);

    /**
     * 删除角色
     */
    public void deleteRole(Integer roleId);

    /**
     * 1.查询当前角色拥有的资源分类信息
     */
    public List<ResourceCategory> findResourceCategoryByRoleId(Integer id);

    /**
     * 2.根据角色id获取该拥有的资源信息
     */
    public List<Resource> findResourceListByRoleId(Integer roleId);

    /**
     * 分配资源
     */
    public void roleContextResource(RoleResourceVo roleResourceVo);

}
